package com.youlu.campus.service.ranking;

import com.youlu.campus.entity.UserPO;
import com.youlu.campus.entity.VO.RankingListQueryVO;
import com.youlu.campus.entity.VO.req.RankingListResVO;

public interface UserInviteCountRankingService {
    /**
     * 邀请人数排行榜
     *
     * @param req
     * @param userPO
     * @return
     */
    RankingListResVO getUserTaskRanking(RankingListQueryVO req, UserPO userPO);

    /**
     * 更新邀请人数
     *
     * @param userId
     * @param activityId
     */
    void updateCount(String userId, String activityId, String appId, String platform, Integer count);

    /**
     * 更新邀请人数有返回
     *
     * @param userId
     * @param activityId
     */
    boolean updateInviteCount(String userId, String activityId, String appId, String platform, Integer count);

    /**
     * 获取邀请人数榜缓存的Key
     *
     * @param activityId
     * @return
     */
    String getRankKey(String activityId, String appId, String platform);
}
